The present invention relates generally to real-time communications over Internet Protocol (IP) networks.
Several modern communication protocols use an “out-of-band signaling” mechanism whereby the channel used to control the communication (the “signaling” or “control” channel) is distinct from the channel used to carry the communicated information itself (the “bearer” or “media” channel). In such protocols, it is possible to control the behavior of the media channel indirectly by actively monitoring and, when necessary, modifying the information that flows in the control channel. Examples of such protocols include H.323, MGCP and the Session Initiation Protocol (SIP).
SIP is a signaling protocol that was created and is maintained within the framework of the Internet Engineering Task Force (IETF) standards development process. Currently, the document that defines the SIP standard is IETF “Request for Comments” (RFC) 3261. The primary purpose of SIP is to create, maintain and terminate interactive communication sessions between intelligent systems connected to an Internet Protocol (IP) network. In SIP terminology, these sessions are commonly referred to as “media” sessions.
When a SIP based system wishes to manage (e.g., initiate, modify or destroy) a media session (or sessions) with another SIP based system, it describes the media session(s) of interest using an IETF standard protocol called the Session Description Protocol (SDP). Currently, the document that defines the SDP standard is IETF “Request for Comments” (RFC) 2327. When SIP based systems negotiate media sessions, they embed SDP media descriptions within the SIP signaling messages they exchange. The media sessions themselves, however, are independent of the signaling sessions and can take different paths through the network.
Using SIP and SDP, intelligent systems are able to set up, maintain and terminate various kinds of media sessions including, for example, real-time text messaging, audio, video, bulk data transfer and interactive application sharing sessions. This enables users of SIP based systems and applications to engage in a wide range of multi-media communication and collaboration activities.
In today's networks, however, organizations often have a need to exercise administrative control over the kinds of media sessions that SIP based systems are allowed to set up, particularly at boundary points in the network. This requirement is derived from the need to provide adequate network security, to control costs, to prevent the unauthorized use of network resources, to ensure acceptable quality of service, and to enforce compliance with internal policies and external regulations.
In SIP based network environments, the need to exercise control over media sessions must sometimes be balanced against the need to ensure optimal performance for SIP based applications. SIP was designed to permit signaling and media traffic to take separate and independent paths through the network to increase the scalability of SIP signaling systems and optimize the performance of SIP-associated media sessions. As a consequence, it has not been possible in the past to effectively control media sessions while preserving the independence of the signaling and media streams in SIP/SDP based network environments. The present invention addresses this need in the art. Therefore, it is desirable to be able to control media sessions while preserving the independence of the signaling and media streams.